package cc.lj.internal.mobilepay.infrastructure.excepion;


import cc.lj.internal.core.exception.IGlobalExceptionEnum;

/**
 * 中信支付服务异常
 *
 * 一共 10 位，分成四段
 *
 * 第一段，1 位，类型
 *      1 - 业务级别异常
 *      2 - 系统级别异常
 * 第二段，3 位，系统类型
 *      001 - 热数据系统
 *      002 - 商户系统
 *      003 - 订单系统
 *      004 - 收款系统
 *      005 - 电子券劵系统
 *      006 - 中信支付接口
 *      ... - ...
 * 第三段，3 位，模块
 *      不限制规则。
 *      一般建议，每个系统里面，可能有多个模块，可以再去做分段。以用户系统为例子：
 *          001 - OAuth2 模块
 *          002 - User 模块
 *          003 - MobileCode 模块
 * 第四段，3 位，错误码
 *       不限制规则。
 *       一般建议，每个模块自增。
 */

public enum MobilepayExceptionEnum implements IGlobalExceptionEnum{

    //==========抢券系统=============
    INSERT_CITIC_LOG_FAILED(1006001001,"新增中信日志表数据失败"),
    REQUEST_CITIC_ERROR(1006001002,"请求中信服务器发生异常"),
    UPDATE_CITIC_LOG_FAILED(1006001003,"修改中信日志表数据失败" ),
    CITIC_PAY_FAILED(1006001004,"统一支付接口调用失败" ),
    CITIC_RESVERSE_FAILED(1006001005,"统一撤销订单接口调用失败" ),
    CITIC_QUERY_FAILED(1006001006,"统一查询订单接口调用失败" ),
    CITIC_PAY_THREE_QUERY_FAIL(1006001007,"统一支付等待用户输入密码，三次查询时，出现异常" ),
    CITIC_RESVERSE_SUCCESS(1006001008,"统一支付等待用户输入密码，三次查询后无结果，撤销订单成功。" ),
    CITIC_REFUND_FAILED(1006001009,"统一退款失败" ),
    CITIC_REFUND_QUERY_FAILED(1006001010,"统一退款查询失败"),
    CITIC_NATIVE_FAILED(1006001011,"统一下单接口调用失败" ),
    CITIC_CLOSE_FAILED(1006001012,"统一关闭订单接口调用失败" ),
    CITIC_NATIVE_TIME_FAILED(1006001013,"统一订单接口，订单生成时间和失效时间需要同时传入才会生效");

    private int code;
    //错误提示
    private String message;
    //构造器
    MobilepayExceptionEnum(int code, String message) {
        this.code = code;
        this.message = message;
    }
    public int getCode() {
        return code;
    }
    public String getMessage() {
        return message;
    }
    public void setCode(int code) {
        this.code = code;
    }
    public void setMessage(String message) {
        this.message = message;
    }
}
